package com.alibaba.citrus.cr.sales.plan.api.salesplan.publish;

import com.alibaba.citrus.cr.sales.plan.dto.api.request.SalesPlanAdjustTaskImportRequest;
import com.alibaba.citrus.cr.sales.plan.dto.api.request.SalesPlanImportRequest;
import com.alibaba.citrus.cr.sales.plan.dto.api.request.SalesPlanLineDepartmentTaskRequest;
import com.alibaba.citrus.cr.sales.plan.dto.api.request.SalesPlanLineTaskImportRequest;
import com.alibaba.lattice2.epoch.meshflow.model.annotation.MeshFlowService;
import com.alibaba.lattice2.epoch.sdk.model.Result;

import java.util.List;

/**
 * @author yuhailin
 * @description:
 * @date 2021-11-14 11:35
 */
@MeshFlowService(apps = {"bc_order"}, name = "salesPlanPublishFileService")
public interface SalesPlanPublishFileService {
    /**
     * 计划明细客户任务量导入
     * @param requestList
     * @return
     */
    Result<List<SalesPlanLineTaskImportRequest>> salesPlanLineTaskImportHandle(List<SalesPlanLineTaskImportRequest> requestList, SalesPlanImportRequest salesPlanImportRequest);

    /**
     * 计划明细部门任务量导入
     * @param requestList
     * @return
     */
    Result<List<SalesPlanLineDepartmentTaskRequest>> salesPlanLineDepartmentTaskImport(List<SalesPlanLineDepartmentTaskRequest> requestList);

    /**
     * 计划调整明细客户任务量导入
     * @param requestList
     * @return
     */
    Result<List<SalesPlanAdjustTaskImportRequest>> salesPlanAdjustTaskImportHandle(List<SalesPlanAdjustTaskImportRequest> requestList, SalesPlanImportRequest salesPlanImportRequest);
}
